OpenFlow Pipeline Design for Efficient Hardware Data Planes
OpenFlow is a highly flexible networking paradigm that is capable of addressing a wide range of networking protocols and applications. An abstract model of an Openflow pipeline may be expressed as a series of Match-Action Tables (MAT) that match on one or more packet and/or packet metadata fields, and actions that may involve forwarding decisions, packet modifications and production of metadata. While such flexibility is very powerful in terms of capabilities, it requires complex ASICs that may not support large scale or performance, or will do so at great cost. FAUCET is an open source SDN/OpenFlow controller that specifies a relatively limited subset of OpenFlow that may be efficiently implemented on a wide variety of platforms, while meeting the needs of enterprise networks. We explore how this pipeline could be redesigned in order to use hardware resources such as pipeline stages, TCAMs and Hash Tables more efficiently to maximize scale and performance without compromising capability. The conclusions of this study may be used to inform the hardware-software co-design of Openflow based networking devices.
View presentation